1. 物联网结构
| 层次 | 主要功能 | 常见对象 |
|---|---|---|
| 感知层 | 感知和采集物理世界信息 | 传感器、摄像头、智能门锁等 |
| 网络层 | 完成数据传输、路由转发、协议转换和网络连接 | 网关、路由器、交换机、无线通信模块 |
| 应用层 | 进行数据处理、业务管理和服务呈现 | 智能家居平台、校园管理系统、工业控制等 |
| 物联网设备安全特点: |
- 资源受限:计算能力、存储空间和能耗有限、难以部署复杂安全机制。
- 部署分散:设备分布在不同位置,维护、升级和统一管理困难。
- 协议多样:系统可能同时设计ARP、DNS、ICMP、TCP等协议
- 攻击面扩大:接入网络的设备越多,攻击入口越多。
2.物联网安全目标与安全体系
物联网安全需要理解安全目标、安全机制和权限管理之间的关系。
| 概念 | 含义 |
|---|---|
| 机密性 | 防止数据被未授权访问,例如视频、门禁记录、传感器数据和用户信息。 |
| 完整性 | 保证数据在传输、存储和处理过程中不被非法篡改。 |
| 可用性 | 保证授权用户在需要时可以正常访问系统和服务。 |
| 认证 | 确认用户、设备或系统身份是否合法。 |
| 授权 | 判定已认证对象是否具有访问某资源或执行某操作的权限。 |
| 访问控制 | 根据身份、角色、设备、来源或策略限制访问行为。 |
| 最小权限原则 | 只授予完成任务所必需的最小权限,避免权限过大。 |
认证方式包括用户名密码认证、多因素认证、客户端证书认证、设备身份认证等。授权与访问控制常用于限制用户、设备或应用能够访问哪些资源。
3. 常见物联网安全风险
| 风险类型 | 核心含义 | 可能影响 |
|---|---|---|
| 默认口令与弱口令 | 设备使用默认密码或安全密码 | 设备被非法登陆、配置被修改、数据泄露 |
| 固件更新不及时 | 设备长期不修复已知漏洞 | 漏洞被利用、设备稳定性和安全性下降 |
| 明文通信 | 账号、命令或数据未加密传输 | 通信内容被嗅探、篡改或重放 |
| 管理接口暴露 | 远程管理入口缺少访问控制 | 管理页面被访问、配置被修改 |
| 隐私泄露 | 采集和存储等数据保护不足 | 个人信息、行为轨迹、设备状态泄露 |
| 设备被非法控制 | 认证或授权不足 | 控制指令被滥用、业务中断 |
4. 基础网络协议与安全
1.APR和APR安全 ARP用于建立IP地址与MAC地址之间的映射关系。ARP请求通常以广播方式发送,主机收到ARP响应后会更新本地APR缓存。 APR协议缺少有效身份认证,攻击者可以伪造ARP响应,造成ARP欺骗或ARP缓存中毒,可能影响包括中间人攻击、流量嗅探、数据篡改、通信阻断和内网访问异常。 常见防护包括静态ARP绑定、ARP防火墙监控、动态ARP检测、VLAN隔离和端口绑定。例:实验室电脑访问共享打印机时,如果出现异常IP-MAC映射,可能需要检查ARP缓存是否被篡改。
2.DNS与DNS重绑定 DNS用于讲域名解析为IP地址。TTL表示DNS解析结果在缓存中的有效时间,TTL较短时解析结果可以更快变化。 DNS重新绑定利用DNS解析结果可变化的特点,以及浏览器同源策略主要依据域名判断的特点,使网页脚本有机会访问内网资源。可能风险包括内网服务被探测、管理页面被访问、设备配置被修改、数据泄露等。常见防护包括DNSSEC安全扩展、浏览器DNS缓存固定、限制网页访问私网地址、内网服务访问控制、关闭不必要管理接口和限制管理页面访问来源。
3.ICMP与Ping ICMP常用于网络诊断、错误报告和连通性测试。Ping命令主要使用ICMPEchoRequest 和 EchoReply 报文。 ICMP也可能被用于主机存活探测、网络结构探测和辅助扫描。防护时应根据管理需要限制不必要的ICMP响应,同时保留必要的诊断能力。
5. TCP三次握手与SYNFlood
TCP 建立连接通常经过三次握手:客户端发送 SYN,服务器返回 SYN+ACK,客户端再发送 ACK。完成三次握手后连接建立。 服务器收到 SYN 后会为连接保留资源,并等待第三次握手完成。尚未完成握手的连接会占用半连接队列、连接状态表、内存和 CPU 等资源。 SYNFlood 是一种拒绝服务攻击。攻击者发送大量 SYN 报文但不完成第三次握手,导致半连接队列和系统资源被占用,正常连接变慢或失败。
| 防护方法 | 作用 |
|---|---|
| SYNCookie | 减少服务器为未完成连接提前分配资源 |
| SYNProxy | 由代理先处理连接请求,过滤异常连接 |
| 连接速率限制 | 限制短时间内异常连接数量 |
| 异常源地址过滤 | 减少伪造或异常来源流量 |
| 缩短半连接超时时间 | 减少半连接资源占用时间 |
6. 防火墙、VPN与TUN/TAP
1.防火墙与包过滤 防火墙用于根据 IP 地址、端口、协议等信息控制网络访问。包过滤防火墙主要查看数据包外层信息,例如源IP、目的 IP、端口和协议类型。 防火墙可用于限制外部访问内部服务、关闭不必要端口、设置白名单或黑名单。但普通包过滤防火墙对加密隧道内部内容识别能力有限。
2.VPN隧道 VPN 通过隧道封装和加密传输提供安全通信通道,通常涉及身份认证和访问控制。VPN 隧道会把原始数据包封装到新的数据包中,防火墙通常只能看到外层通信信息。 VPN 如果缺少管理,可能被用于绕过访问控制或隐藏真实访问行为。常见管理措施包括 VPN 白名单、限制出站端口、账号权限管理、日志审计、异常流量检测和明确远程访问权限范围。
3.TUN与TAP
| 类型 | 工作层次 | 处理对象 |
|---|---|---|
| TUN | 网络层 | IP数据包 |
| TAP | 数据链路层 | 以太网帧 |
7. 远程管理、MQTT与零信任
1.Telnet与SSH Telnet 是传统远程管理协议,通常采用明文传输,账号口令和管理命令容易被嗅探,连接也可能被干扰或劫持。重要设备管理应尽量关闭 Telnet,使用 SSH 等加密管理方式,并限制管理端口访问来源
2.MQTT安全 MQTT 是物联网中常见的轻量级发布/订阅消息协议,适合资源受限设备通信。核心概念包括客户端、Broker、主题、发布和订阅。 MQTT 安全风险包括未授权设备接入、非法发布消息、非法订阅敏感主题、伪造设备数据和控制指令被滥用。常见防护包括用户名密码认证、客户端证书认证、TLS 加密通信、ACL 访问控制列表和主题权限控制。 例:智能照明设备通过 MQTT 发布状态信息时,应限制其只能访问与自身功能相关的主题,不能越权订阅控制类主题。
3.零信任架构 零信任强调“永不信任,始终验证”。系统不应因为用户或设备处于内网就默认信任,而应持续验证访问主体、设备状态和访问权限。
- 显式认证:访问资源前确认用户身份、设备状态和访问条件。
- 最小权限:只授予完成任务所需的权限。
- 持续监控:记录和分析异常登录、异常访问、大量失败请求等行为。
8. 典型物联网应用场景安全
不同场景中的设备类型不同,但核心风险通常围绕账号、权限、远程管理、通信加密、固件更新、日志监控和隐私保护展开。
| 场景 | 关注对象 | 常见风险 |
|---|---|---|
| 智能家居 | 智能插座、家庭网关、安防设备、传感器 | 弱口令、远程接口暴露、隐私泄露、设备被控制 |
| 智慧校园 | 门禁、监控、环境采集、校园网络设备 | 隐私泄露、门禁异常、数据篡改、管理秩序受影响 |
| 工业物联网 | 工业传感器、控制器、边缘网关、生产监控平台 | 控制指令伪造、生产数据篡改、业务中断 |
| 智慧医疗 | 医疗设备、监护系统、医院网络、远程诊疗系统 | 患者隐私泄露、医疗数据篡改、服务不可用 |
9. 重点攻击与防护对照
| 安全问题 | 主要原因 | 可能影响 | 常见防护 |
|---|---|---|---|
| ARP欺骗 | ARP 缺少身份认证 | 流量嗅探、篡改、阻断 | 静态 ARP、ARP 防火墙、VLAN 隔离 |
| DNS重绑定 | DNS 解析变化、同源策略特点 | 内网服务暴露 | DNSSEC、DNS 缓存固定、内网访问控制 |
| SYNFlood | 半连接资源被占用 | 服务不可用 | SYNCookie、限速、SYNProxy |
| 弱口令 | 默认密码或简单密码 | 设备被非法登录 | 修改默认口令、强密码、多因素认证 |
| 明文管理 | Telnet等明文协议 | 账号和命令泄露 | 使用 SSH、限制管理来源 |
| VPN滥用 | 隧道封装隐藏内部访问 | 绕过访问控制、审计困难 | VPN 白名单、日志审计、权限管理 |
| MQTT未授权访问 | 缺少认证和 ACL | 非法发布或订阅消息 | 认证、证书、ACL、TLS |
| 固件漏洞 | 长期不更新 | 已知漏洞被利用 | 定期更新、安全补丁 |
| 管理接口暴露 | 访问控制不足 | 配置被修改、设备被控制 | 关闭不必要接口、限制来源、身份认证 |
10. 易混淆概念
| 概念 | 含义 |
|---|---|
| 认证 | 确认用户、设备或系统身份是否合法 |
| 授权 | 判断已认证对象是否具有相应操作权限 |
| 访问控制 | 限制谁可以访问什么资源 |
| 最小权限 | 只授予完成任务所需的权限 |
| 机密性 | 防止数据被未授权查看 |
| 完整性 | 防止数据被非法篡改 |
| 可用性 | 保证系统和服务能够正常使用 |
| ARP | 建立 IP 地址与 MAC 地址的映射关系 |
| DNS | 将域名解析为 IP 地址 |
| ICMP | 用于网络诊断和错误报告 |
| TUN | 三层虚拟网卡,处理 IP 数据包 |
| TAP | 二层虚拟网卡,处理以太网帧 |
| Telnet | 明文远程管理协议 |
| SSH | 加密远程管理协议 |
| MQTT | 轻量级发布/订阅消息协议 |